home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
IRIS Performer 2.2 Friends Demo
/
SGI IRIS Performer 2.2 Friends Demo.iso
/
friends
/
openworlds
/
tix
/
StackWin.tcl
< prev
next >
Wrap
Text File
|
1997-11-22
|
1KB
|
66 lines
# tixStackWindow --
#
# Bare-bone NoteBook type of window.
#
#
tixWidgetClass tixStackWindow {
-classname tixStackWindow
-superclass tixVStack
-method {
}
-flag {
}
-configspec {
}
}
proc tixStackWindow::ConstructWidget {w} {
upvar #0 $w data
set data(w:tabs) [tixSelect $w.tabs]
# We can't use the packer because it will conflict with the
# geometry management of the VStack widget.
#
tixManageGeometry $data(w:tabs) "tixVStack::GeomProc $w"
}
proc tixStackWindow::add {w child args} {
upvar #0 $w data
set ret [eval tixChainMethod $w add $child $args]
$data(w:tabs) add $child -command "$w raise $child" \
-text $data($child,label)
return $ret
}
proc tixStackWindow::raise {w child} {
upvar #0 $w data
$data(w:tabs) config -value $child
tixChainMethod $w raise $child
}
proc tixStackWindow::Resize {w} {
upvar #0 $w data
# We have to take care of the size of the tabs so that
#
set tW [winfo reqwidth $data(w:tabs)]
set tH [winfo reqheight $data(w:tabs)]
tixMoveResizeWindow $data(w:tabs) $data(-ipadx) $data(-ipady) $tW $tH
tixMapWindow $data(w:tabs)
set data(pad-y1) [expr $tH + $data(-ipadx)]
set data(minW) [expr $tW + 2 * $data(-ipadx)]
set data(minH) [expr $tH + 2 * $data(-ipady)]
# Now that we know data(pad-y1), we can chain the call
#
tixChainMethod $w Resize
}